package persistencia.objetoNegocio;

public class Oferta extends Item {

    private Producto principal;
    private Producto secundario;
    private Boolean ofertaActual;


    public Oferta() {
    }

    public Oferta(Producto principal, Producto secundario) {

        this.principal = principal;
        this.secundario = secundario;

    }

    @Override
    public boolean equals(Object o) {
        if (o == null || !(o instanceof Oferta))
            return false;

        Oferta of = (Oferta)o;

        return of.getId() != null && of.getId().equals(this.getId());
    }

    @Override
    public boolean esOferta() {
        return true;
    }
    
    @Override
    public String getTipo(){
        return "Oferta";
    }
    
    public Float obtenerPrecio() {
        Float precio = principal.obtenerPrecio() + secundario.obtenerPrecio();

        return precio;
    }

    @Override
    public String getModelo() {
        return "Oferta: " + principal.getModelo() + " + " + 
            secundario.getModelo();
    }

    
    @Override
    public String getMarca() {
        return principal.getMarca() + " + " + secundario.getMarca();
    }
    
    @Override
    public Float getGananciaArticulo() {
        return principal.getGananciaArticulo() + 
            secundario.getGananciaArticulo();
    }


    public Producto getPrincipal() {
        return principal;
    }

    public void setPrincipal(Producto principal) {
        this.principal = principal;
    }

    public Producto getSecundario() {
        return secundario;
    }

    public void setSecundario(Producto secundario) {
        this.secundario = secundario;
    }

    public Boolean getOfertaActual() {
        return ofertaActual;
    }

    public void setOfertaActual(Boolean ofertaActual) {
        this.ofertaActual = ofertaActual;
    }

    public String toString() {
        String res = "";

        res = "Oferta: \n" +
                "Producto principal: " + this.getPrincipal() + "\n";
        res += "Producto asociado: " + this.getSecundario() + "\n";

        return (res);
    }
}
